export interface FormItemRule {
    msg?: string; // 提示语
    required?: boolean; // 是否必填
    selfVerify?: () => void;
    minLength?: number;
    maxLength?: number;
    pattern?: string;
    async?: boolean;
}

export interface FormItemLayout {
    label: number;
    cont: number;
}

export interface FormGroupItem {
    type: string; // 表单类型
    name: string; // 字段名称
    label: string; // 显示名称
    required?: boolean;
    value?: any;
    render?: any;
    defaultValue?: any;
    placeholder?: string;
    showAll?: boolean;
    colSpan?: number;
    layout?: FormItemLayout;
    data?: any;
    rules?: FormItemRule[];
    updateOn?: string;
    asyncValidators?: any[];
    validators?: any[];
    errorTipObj?: any;
}

export interface CheckItem {
    label: string;
    value: string;
    checked?: boolean;
}

export enum CheckMode {
    list = 'list',
    str = 'str',
    all = 'all'
}
